﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

using PEMS.Common;

namespace PEMS.Server
{
    /// <summary>
    /// Tárgyak listája, targyList helyett
    /// </summary>
    [Serializable]
    public class Targyak
    {

        public SerializableDictionary<string, Targy> targyList;

        /// <summary>
        /// konstruktor
        /// </summary>
        public Targyak()
        {
            targyList = new SerializableDictionary<string, Targy>();
        }

        /// <summary>
        /// egy Targy objektumot ad vissza id alapján
        /// </summary>
        public Targy getTargy(string id)
        {
            try
            {
                if (targyList.ContainsKey(id))
                {
                    return targyList[id];
                }
            }
            catch (Exception e)
            {
                Console.WriteLine("\nException in getTargy(): " + e.Message + "\n");
                return null;
            }
            return null;
/*            Targy t = new Targy();
            t = null;
            try
            {
                foreach (KeyValuePair<string, Targy> targy in targyList)
                {
                    if (targy.Value.id == id)
                    {
                        t = targy.Value;
                    }
                }
            }
            catch
            {
                return null;
            }
            return t;    */
        }

        /// <summary>
        /// listázza az aktuális tárgyakat
        /// </summary>
        public SerializableDictionary<string, Targy> targyLista()
        {
            return targyList;
        }

        /// <summary>
        /// egy Targyat ad a listához
        /// </summary>
        public bool targyHozzaadasa(string id, string megnevezes)
        {
            if (getTargy(id) != null)
            {
                return false;
            }
            bool hozzaadva = true;
            try
            {
                Targy targy = new Targy(id, megnevezes);
                targyList.Add(targy.id, targy);
            }
            catch (Exception e) 
            {
                hozzaadva = false;
            }
            return hozzaadva;
        }
    }
}
